package com.ruoyi.operation.service;

import com.ruoyi.operation.domain.bo.TFileGroupBo;
import com.ruoyi.operation.domain.vo.FileMonitorVo;
import com.ruoyi.operation.domain.vo.TFileGroupVo;
import com.ruoyi.common.mybatis.core.page.PageQuery;
import com.ruoyi.common.mybatis.core.page.TableDataInfo;

import java.util.Collection;
import java.util.List;

/**
 * 文件组Service接口
 *
 * @author ruoyi
 * @date 2025-07-22
 */
public interface ITFileGroupService {

    /**
     * 查询文件组
     */
    TFileGroupVo queryById(String id);

    /**
     * 查询文件组列表
     */
    TableDataInfo<TFileGroupVo> queryPageList(TFileGroupBo bo, PageQuery pageQuery);

    /**
     * 查询文件组列表
     */
    List<TFileGroupVo> queryList(TFileGroupBo bo);

    /**
     * 修改文件组
     */
    Boolean insertByBo(TFileGroupBo bo);

    /**
     * 修改文件组
     */
    Boolean updateByBo(TFileGroupBo bo);

    /**
     * 校验并批量删除文件组信息
     */
    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);

    List<FileMonitorVo> selectAllMonitorList(String groupId);

}
